// 目录操作
#include <stdio.h>
#include <stdlib.h>
#include <dirent.h>
#include <sys/types.h>
#include <sys/stat.h>

int main(int argc, char* argv[])
{
    // 创建目录
    // rwx r-x r-x
    // 7    5   5
    DIR *dir;
    // 前面加0 8进制    0x 16进制
    
    //成功返回0 失败返回-1并且设置errno
    // if(mkdir("hello", 0755))
    // {
    //     perror("mkdir 失败！\n");
    //     exit(1);
    // }

    dir = opendir(argv[1]);
    if(!dir)
    {
        perror("打开目录失败！\n");
        exit(1);
    }
    printf("目录已打开！\n");
    struct dirent *d;
    //会返回 struct dirent*  这个指针指向下一个文件的入口
    while(d = readdir(dir))
    {
        printf("%s\t%d",d->d_name, (int)d->d_type);
        if(d->d_type == 4)
            printf("目录\t");
        if(d->d_type == 8)
            printf("文件");
        printf("\n");
    }
    closedir(dir);
    return 0;
}